La raccolta delle informazioni per l'iscrizione dell'utente richiede la creazione di una sequenza di pagine HTML e il download, su richiesta, dall'ISS al client HTTP. La sequenza di pagine conduce l'utente attraverso il processo di iscrizione, analogamente a un'installazione guidata in un programma per Windows. Sebbene il contenuto e il formato delle pagine siano interamente a discrezione degli amministratori, ciascuna pagina in genere include:
L'ultima pagina contiene un pulsante aggiuntivo che l'utente pu≥ scegliere per inviare all'ISS la scheda per l'iscrizione completata.
Per creare pagine per l'iscrizione dell'utente
Nota
La creazione di un'interfaccia simile a quella di un'installazione guidata nelle pagine HTML richiede l'utilizzo di schede HTML e di elaborazione CGI. Ciascuna scheda raccoglie informazioni dall'utente e utilizza il metodo GET per passare le informazioni al processore CGI quando l'utente fa clic sul pulsante di spostamento.
Ciascuna pagina HTML include in genere una scheda contenente i seguenti controlli:
I dati di una scheda sono inviati al processore CGI quando l'utente fa clic su uno dei pulsanti di spostamento della scheda. Il processore CGI accumula i dati nel proprio database. ╚ possibile convalidare i dati e inviare una pagina di modifica al client HTTP se i dati non sono accettabili. ╚ inoltre possibile memorizzare i dati nel proprio database mentre il processore CGI riceve i dati o attendere il completamento dell'intera sessione per l'iscrizione.
Dopo l'acquisizione dei dati il processore CGI determina quale pulsante ha iniziato l'invio e utilizza quelle informazioni per comporre la successiva pagina HTML da scaricare sul computer dell'utente. Il processore CGI costruisce dinamicamente la pagina successiva partendo da un modello HTML contenente token variabili. Quando il processore analizza un token variabile, quale un token $SessionHandle, sostituisce il token nel flusso HTML con il valore di variabile appropriato. Il processore scrive infine il file HTML creato dinamicamente sul client HTTP per mezzo del flusso di output standard.
L'utilizzo di HTML dinamico offre la possibilitα di precaricare i controlli della scheda con valori, consentendo all'utente di spostarsi avanti e indietro attraverso le pagine HTML per rivedere o modificare i dati inseriti precedentemente.
Il processore CGI utilizza un handle di sessione unico per identificare tutte le transazioni appartenenti a una particolare sessione per l'iscrizione. Il processore incorpora l'handle di sessione come controllo nascosto nelle schede HTML che carica nel client HTTP. Il client restituisce l'handle insieme a ciascuna scheda e li invia nuovamente al processore CGI.
PoichΘ il protocollo HTTP non Φ orientato alla sessione, il solo modo in cui l'ISS pu≥ determinare se la sessione per l'iscrizione Φ stata abbandonata Φ tramite un processo di controllo esterno. Dopo l'avvio di una sessione per l'iscrizione l'ISS crea l'impostazione dell'ora e la registra nel database per l'iscrizione.
Il processo di controllo esamina periodicamente il database e determina se una sessione ha superato il tempo nominale stabilito per l'iscrizione. In tal caso, il processo di controllo presuppone che la sessione abbia superato il tempo a disposizione e interrompe la transazione per l'iscrizione.